package com.yzy.demo.config;

import com.wechat.pay.contrib.apache.httpclient.util.PemUtil;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.security.PrivateKey;

/**
 * @author 杨志远
 * @date 2025/4/4 20:59
 */
public class WxPayConfig {
    /**
     * 商户号
     */
    private String mchId;
    /**
     * 商户API认证书序列号
     */
    private String mchSerialNo;
    /**
     * 商户私钥文件
     */
    private String privateKeyPath;
    /**
     * APIv3密钥
     */
    private String apiV3Key;
    /**
     * appId
     */
    private String appId;
    /**
     * 微信服务器地址
     */
    private String domain;
    /**
     * 接受结果通知地址
     */
    private String notifyDomain;

    /**
     * 获取商户的私钥文件,加载用户的密钥文件生成一个PrivateKey对象
     *
     * @return
     */
    private PrivateKey getPrivateKey(String fileName) throws FileNotFoundException {
        try {
            PrivateKey privateKey2 = PemUtil.loadPrivateKey(new FileInputStream(fileName));
            return privateKey2;
        } catch (FileNotFoundException e) {
            throw new RuntimeException("商户私钥文件不存在", e);
        }
    }
}
